/**
 * @license
 * Cesium - https://github.com/CesiumGS/cesium
 * Version 1.99
 *
 * Copyright 2011-2022 Cesium Contributors
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * Columbus View (Pat. Pend.)
 *
 * Portions licensed separately.
 * See https://github.com/CesiumGS/cesium/blob/main/LICENSE.md for full licensing details.
 */
define(["./defaultValue-96fcdfd6","./defined-841154bc"],(function(e,r){"use strict";return function(t){let n;return function(s){const i=s.data,a=[],o={id:i.id,result:void 0,error:void 0};return Promise.resolve(function(e,r,t){let n;try{return n=e(r,t),n}catch(e){return Promise.reject(e)}}(t,i.parameters,a)).then((function(e){o.result=e})).catch((function(e){e instanceof Error?o.error={name:e.name,message:e.message,stack:e.stack}:o.error=e})).finally((function(){r.defined(n)||(n=e.defaultValue(self.webkitPostMessage,self.postMessage)),i.canTransferArrayBuffer||(a.length=0);try{n(o,a)}catch(e){o.result=void 0,o.error=`postMessage failed with error: ${function(e){let t;const n=e.name,s=e.message;t=r.defined(n)&&r.defined(s)?`${n}: ${s}`:e.toString();const i=e.stack;return r.defined(i)&&(t+=`\n${i}`),t}(e)}\n  with responseMessage: ${JSON.stringify(o)}`,n(o)}}))}}}));
